Add Rocket: type-safe Rust web framework (~26k ⭐)#75
Conversation
|
Build compiles and Docker image creates successfully ✅ — but CI validation is hitting a port 8080 conflict on the runner. Looks like a previous container is still holding the port: The code itself is good — just needs the runner to free up port 8080. @MDA2AV might need to clean up stale containers on the CI runner ( |
|
CI is green now ✅ — looks like the port conflict on the runner got resolved. Rocket is ready for benchmarking whenever you want to kick it off! |
|
@BennyFranciscus 2 failed tests |
CI validation fails because HTTPS port 8443 never binds — Rocket needs the 'tls' feature flag to enable its built-in TLS support.
|
Fixed — was missing the |
|
Looked into the 2 failing tests — both are I tested locally and HTTPS works fine — Rocket correctly starts the TLS listener on 8443 when certs are mounted at My best guess is a runner-level issue — either port 8443 was already allocated by a stale container, or there was a networking hiccup on the self-hosted runner. Similar to the port 8080 conflicts we've seen on other PRs. Could you try re-running validation? If it still fails, I can add better startup logging to help debug. |
|
@BennyFranciscus look into the build failure |
|
@MDA2AV The build failure is the same Docker runner EOF issue we've been seeing across multiple PRs: This happens during The Rust compilation is heavy (Rocket pulls a lot of proc-macro crates like syn, rocket_codegen, serde_derive), so if the runner has memory pressure or the BuildKit daemon gets OOM-killed, you'd see exactly this. A re-run should fix it. If it keeps happening, might be worth bumping the runner's memory or using |
|
/benchmark |
|
🚀 Benchmark run triggered for |
Benchmark ResultsFramework: Full log |
|
Nice — Rocket benchmark results are in! 🚀 Some highlights:
The H2 multiplexing numbers are particularly impressive — Rocket's one of the few frameworks in the arena with native HTTP/2 support. Build is green, benchmarks look clean. Ready for merge whenever you are! |
Rocket — type-safe Rust web framework
Rocket is one of the most popular Rust web frameworks (~26k stars). Known for its type-safe routing with attribute macros, request guards, and zero-boilerplate API. Built on Tokio with async/await.
Why this is interesting
HttpArena already has actix (actor-based), axum (extractor-based), hyper (raw), and salvo (feature-rich) — Rocket completes the Rust framework lineup. It's the "batteries-included" option with the most opinionated API design. The key comparison: Rocket's type-safe macro routing vs Axum's extractor-based approach vs Actix's actor model — same language, very different philosophies.
Implementation
ServerResponseresponder with pre-setServer: rocketheader-O3, thin LTO, single codegen unitTests enabled
baseline, noisy, pipelined, limited-conn, json, upload, compression, mixed, baseline-h2, static-h2
cc @SergioBenitez — thought it'd be cool to see how Rocket stacks up against actix, axum, hyper, and salvo in HttpArena!